<template>
  <div>
    <h2>一、从历史说起</h2>
    <div>我们可以将它规划成如下的几个时代来进行理解</div>
    <ul>
      <li>石器时代</li>
      <li>文明时代</li>
      <li>工业革命时代</li>
      <li>百花齐放时代</li>
    </ul>
    <h4>石器时代</h4>
    <div>最早的网页是没有数据库的，可以理解成就是一张可以在网络上浏览的报纸，直到CGI技术的出现</div>
    <h2>文明时代</h2>
    <div>ASP:其实就是Java + HTML</div>
    <br>
    <div>JSP有一个很大的缺点，就是不太灵活，因为JSP是在服务器端执行的，通常返回该客户端的就是一个HTML文本。我们每次的请求：获取的数据、内容的加载，都是服务器为我们返回渲染完成之后的 DOM，这也就使得我们开发网站的灵活度大打折扣</div>
    <br>
    <div>同年：Ajax火了,实现啦局部刷新</div>
    <h2>工业革命时代</h2>
    <div>移动设备的普及，Jquery的出现，以及SPA（Single Page Application 单页面应用）的雏形，Backbone EmberJS AngularJS 这样一批前端框架随之出现。</div>
    <h4>百花齐放时代</h4>
    <div>各种框架，各种插件</div>
    <h2>二、vue是什么</h2>
    <div>是一个用于创建用户界面的开源JavaScript框架，也是一个创建单页应用的Web应用框架</div>
    <br>
    <div>同时也是一款流行的JavaScript前端框架，旨在更好地组织与简化Web开发。Vue所关注的核心是MVC模式中的视图层，同时，它也能方便地获取数据更新，并通过组件内部特定的方法实现视图与模型的交互</div>
    <h2>三、Vue核心特性</h2>
    <h4>数据驱动（MVVM)</h4>
    <div>MVVM表示的是 Model-View-ViewModel</div>
    <ul>
      <li>Model：模型层，负责处理业务逻辑以及和服务器端进行交互</li>
      <li>View：视图层：负责将数据模型转化为UI展示出来，可以简单的理解为HTML页面</li>
      <li>ViewModel：视图模型层，用来连接Model和View，是Model和View之间的通信桥梁</li>
    </ul>
    <h4>组件化</h4>
    <div>在Vue中每一个.vue文件都可以视为一个组件</div>
    <div>降低整个系统的耦合度，在保持接口不变的情况下，我们可以替换不同的组件快速完成需求，例如输入框，可以替换为日历、时间、范围等组件作具体的实现
    调试方便，由于整个系统是通过组件组合起来的，在出现问题的时候，可以用排除法直接移除组件，或者根据报错的组件快速定位问题，之所以能够快速定位，是因为每个组件之间低耦合，职责单一，所以逻辑会比分析整个系统要简单
    提高可维护性，由于每个组件的职责单一，并且组件在系统中是被复用的，所以对代码进行优化可获得系统的整体升级</div>
    <h4>指令系统</h4>
    <div>解释：指令 (Directives) 是带有 v- 前缀的特殊属性</div>
    <div>v-if,v-for,v-bind,v-on,v-model</div>
    <h2>四、Vue跟传统开发的区别</h2>
    <div>Vue所有的界面事件，都是只去操作数据的，Jquery操作DOM</div>
    <h2>五、Vue和React对比</h2>
    <div>相同点</div>
    <ul>
      <li>都有组件化思想</li>
      <li>都支持服务器端渲染</li>
      <li>都有Virtual DOM（虚拟dom）</li>
      <li>数据驱动视图</li>
      <li>都有支持native的方案：Vue的weex、React的React native</li>
      <li>都有自己的构建工具：Vue的vue-cli、React的Create React App</li>
    </ul>
    <div>区别</div>
    <ul>
      <li>数据流向的不同。react从诞生开始就推崇单向数据流，而Vue是双向数据流</li>
      <li>数据变化的实现原理不同。react使用的是不可变数据，而Vue使用的是可变的数据</li>
      <li>组件化通信的不同。react中我们通过使用回调函数来进行通信的，而Vue中子组件向父组件传递消息有两种方式：事件和回调函数</li>
      <li>diff算法不同。react主要使用diff队列保存需要更新哪些DOM，得到patch树，再统一操作批量更新DOM。Vue 使用双向指针，边对比，边更新DOM</li>
    </ul>
  </div>
</template>
<script>
export default{

}
</script>
<style lang="scss" scoped>

</style>
